package cn.bugstack.springframework.context;

import cn.bugstack.springframework.beans.BeansException;
import cn.bugstack.springframework.beans.factory.Aware;


/**
 * ApplicationContextAware接口，提供了一个方法来设置应用上下文。
 * 实现这个接口的类可以自动注入ApplicationContext，从而获取到应用上下文信息。
 * 这是Spring框架中的一种依赖注入方式，使得组件可以访问到应用上下文中的其他组件。
 */
public interface ApplicationContextAware extends Aware {

    /**
     * 设置应用上下文。
     *
     * @param applicationContext 应用上下文对象，类型为ApplicationContext。
     *                           它提供了访问应用上下文中所有bean的方法。
     * @throws BeansException 如果设置过程中发生错误，则抛出BeansException。
     */
    void setApplicationContext(ApplicationContext applicationContext) throws BeansException;

}
